import { TabTypeEnum } from "@/constants/other-keys"

export interface SceneBaseInfo {
  game_id: string | undefined
  /** 仿真场景名称 */
  game_name: string
  /** 仿真场景类型 */
  game_type: TabTypeEnum
  /** 仿真场景描述 */
  game_describe: string
  /** 仿真场景文件路径 */
  game_files_path: string
  /** 场景仿真资源名称 */
  sim_config_name?: string
  /** 场景仿真资源Id */
  sim_config_id?: string
  /** 场景算法标签 */
  game_al_tag?: string
}

export interface TableRequestData {
  /** 仿真场景名称 */
  game_name?: string
  game_type: TabTypeEnum
  game_al_tag?: string
  /** 发布时间 */
  publish_time?: string
  /** 截至时间 */
  end_time?: string
}

export interface PageTableRequestData extends TableRequestData {
  /** 当前页码 */
  current_page: number
  /** 查询条数 */
  size?: number
}

export interface TableData {
  create_user: {
    user_id: string
    user_name: string
    user_position: string
  }
  create_time: string
}

export interface SceneTableData extends SceneBaseInfo, TableData {
  game_id: string
}
export type SearchSceneTableResponseData = ApiResponseData<{
  total_pages: number
  total_count: number
  page_info: SceneTableData[]
}>
export type SceneInfoResponseData = ApiResponseData<SceneBaseInfo>
export type SceneListResponseData = ApiResponseData<SceneTableData[]>
export type SceneSaveResponseData = ApiResponseData<{ game_id: string }>
